Today's Question:  What does your personal desk look like?        GIVE A SHOUT

SEARCH KEYWORD -- Object oriented



  Understanding the "this" keyword in JavaScript

Many people get tripped up by the this keyword in JavaScript. I think the confusion comes from people reasonably expecting this to work like “this” does in Java or the way people use “self” in Python. Although this is sometimes used to similar effect, it’s nothing like “this” in Java or other languages. And while it’s a little harder to understand, its behavior isn’t magic. In fact, this follows a relatively small set of simple rules. This...

   JavaScript,this,understanding     2012-03-29 13:48:59

  Why I love everything you hate about Java

If you’re one of those hipster programmers who loves Clojure, Ruby, Scala, Erlang, or whatever, you probably deeply loathe Java and all of its giant configuration files and bloated APIs of AbstractFactoryFactoryInterfaces. I used to hate all that stuff too. But you know what? After working for all these months on these huge pieces of Twitter infrastructure I’ve started to love the AbstractFactoryFactories. Let me explain why. Consider this little Scala program. It uses â€...

   Java,Comparison,Modularity,API     2011-11-29 08:48:15

  Game Development Essentials #1 - Don’t use inheritance for your game objects

I recently released my first game, X Fleet, available now in Android Market. It’s a fast paced space shooter / rpg riddled with awesomeness and you should get it now. The reason you should avoid hierarchies/inheritance is your objects will be far too varied and complicated in form to be accurately represented as such. More on this below.  The alternative is a component model. This is very basic. Instead of having everything inheriting (e.g. Object -> MovableObject -> Animat...

   Game design,OOP,Inheritence,Game object     2012-02-07 06:26:40

  C vs Java Complete Comparison

Similarities: Java and C have same syntax operators. Difference—thinking Two paradigms: Java: Object oriented language C: Structured language Differences: --Syntax No preprocessor Java does not include a preprocessor and does not define any analogs of the #define, #include, and #ifdef directives. Constant definitions are replaced with static final fields in Java. (See the java.lang.Math.PI field for an example.) Macro definitions are not available in...

   C,Java,Comparison,Difference,Similaritie     2011-10-06 12:46:39

  JavaScript Is Not A Language

Recently people presented arguments for and against using CoffeeScript. I felt the argument against was pointless and obviously wrong, but I couldn't figure out why, and I thought the counterargument for was kind of toothless and irrelevant. I've figured out the real issue.The real argument for CoffeeScript is that JavaScript is not really a language.Years ago I read something which explained, in my opinion, why Lisp has never achieved the mainstream adoption its passionate advocates belie...

   JavaScript,Not a language,CoffeeScript,Model     2011-12-29 08:46:15

  Moving from Java to C++: An Interview with Rogers Cadenhead

In this interview, co-author of Sams Teach Yourself C++ in 24 Hours, 5th Edition Rogers Cadenhead discusses moving from Java to C++, what brought him to C++, and the best tactics for learning C++.Danny Kalev: For how long were you a Java programmer? Can you tell us a bit about the nature of the projects in which you took part at that time?Rogers Cadenhead: I've been a Java programmer since the language was launched by Sun Microsystems in 1995. I was doing website develop...

   Java,C++,Transfer,Transform,New challeng     2011-09-03 11:01:26

  JSON unmarshal in GoLang

In almost all mainstream programming languages, there is either built-in or third-party library to support parse JSON data because it is so popular for organizing and transferring data among different services. In GoLang, the built in json package also provides functions for marshalling and unmarshalling JSON data. Marshalling GoLang struct to a JSON string is relatively simple, just need to call json.Marshal(), it's a bit complicated to unmarshal an arbitrary JSON string into a GoLang struct ob...

   GOLANG,JSON,UNMARSHAL,EMPTY INTERFACE     2019-11-09 21:57:30

  Why are column oriented databases so much faster than row oriented databases?

I have been playing around with Hybrid Word Aligned Bitmaps for a few weeks now, and they turn out to be a rather remarkable data structure.  I believe that they are utilized extensively in modern column oriented databases such as Vertica and MonetDB. Essentially HWABs are a data structure that allows you to represent a sparse bitmap (series of 0's and 1's) really efficiently in memory.  The key trick here is the use of run length encoding to compress the bitmap into fe...

   Database,Column oriented,Speed analysis,Vertica     2012-01-29 04:27:05

  Basic Patterns for Everyday Programming

For most of you the patterns mentioned below should be nothing new. These are very basic stuff we slap into our code everyday and at times feels they are actually code smells than smart patterns. However, I've been doing some code reviewing lately and came across many code that lacks even these basic traits. So I thought of writing them down as a help for novice developers who would want to get a better grasp at these.These patterns are commonly applicable in most general purpose programming lan...

   Pattern,Code,NULL,Function,JavaScript,Assign default value     2011-11-23 08:03:55

  Jack Ma's interviews during Alibaba's IPO at NYSE

Alibaba has been listed on NYSE on 19 September. It becomes the largest IPO ever in the history of US stock exchange, larger than Facebook then the largest one. And after the trading closed on Friday, its share price closed at $93.89 per share, this makes it the second largest Internet company in the world following Google. Jack Ma, the founder of Alibaba, also becomes the richest person in China with a total wealth of $18.1 billion. He accepted interviews from different media during the IPO. Le...

   Alibaba,Interview,Jack Ma,IPO,Video     2014-09-20 20:09:27